#ifndef EXPR_H
#define EXPR_H
#include <string>
#include "tipo_ts.h"
#include "tabla_simbolos.h"
#include "codigo_lugar.h"
#include "generarvariable.h"
using namespace std;
class Expr
{
public:
    Expr(int fila,int col);
    virtual string is() = 0;
    virtual Tipo_ts* validarSemantica(Tabla_Simbolos *tabla_de_tipo,Tabla_Simbolos *tabla_de_varaible)=0;
    virtual Codigo_Lugar generarCodigo(GenerarVariable* var,Tabla_Simbolos *tabla_de_tipo,Tabla_Simbolos *tabla_de_varaible)=0;
    int getFila();
    int getCol();
    void setFila(int fila);
    void setCol(int col);

private:
    int fila;
    int col;
};

#endif // EXPR_H
